//
//  CannonView.h
//  CannonGame
//
//  Created by fly on 11/02/17.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
#define TARGET_PIECES	7					//目标个数

typedef struct line							//用两点来表示一个线段
{
	CGPoint	start;		//起点
	CGPoint end;		//终点
}Line;					//完成结构体line的定义


@interface CannonView : UIView 
{
	AVAudioPlayer	*cannonFireSound;	//播放加农炮发射的声音
	AVAudioPlayer	*targetHitSound;	//播放击中目标的声音
	AVAudioPlayer	*blockerHitSound;	//播放击中拦截器的声音
	
	Line	blocker;					//保存拦截器端点的信息
	Line	target;						//保存目标端点信息
	
	BOOL	targetPieceHit[TARGET_PIECES];	//是否每个目标都被击中
	int		targetPiecesHit;				//已被击中的目标个数
	
	float	blockerVelocity;				//拦截器速度
	float	targetVelocity;					//目标速度
	
	CGPoint	cannonball;						//炮弹图片的左上角
	CGPoint	cannonballVelocity;				//炮弹的速度
	
	CGPoint	barrelEnd;						//加农炮枪管的终点
	NSTimer *timer;							//主定时器
	BOOL	cannonballOnScreen;				//是否还有炮弹在屏幕上
	
	int		timerCount;						//计时器触发次数
	int		timeLeft;						//剩余时间
	int		shotsFired;						//已射击次数
	int		timeElapsed;					//已消逝的秒数
}
- (void)timerFired:(NSTimer *)theTimer;		//更新整个显示

//以给定标题和消息显示一个警告窗口
- (void)showAlertWithTitle:(NSString *)title message:(NSString *)message;
- (void)newGame;							//开始一个新游戏
- (void)processTouch:(UITouch *)touch;		//处理一个玩家的触摸事件


@end
